﻿using WCell.Constants.GameObjects;
using WCell.RealmServer.NPCs;
using WCell.Constants.NPCs;
using WCell.RealmServer.Factions;
using WCell.Constants.Factions;
using WCell.Core.Initialization;
using WCell.RealmServer.Spells;
using WCell.RealmServer.Items;
using WCell.Constants.Items;
using WCell.Constants;
using WCell.Util.Graphics;
using WCell.Util.Variables;
using WCell.RealmServer.GameObjects;
using WCell.RealmServer.GameObjects.GOEntries;
using WCell.Constants.Spells;
using WCell.RealmServer.Entities;
using WCell.RealmServer.Global;
using WCell.Constants.World;


namespace Kingdoms
{
    public class GuardBrute : KingdomGuard
    {

    }

    public static class BruteTemplate
    {
        public static NPCEntry KingdomBrute;
        public static void CreateTemplate(uint id, string guildname)
        {
            uint bruteID = id;
            KingdomBrute = new NPCEntry
            {
                DefaultName = "Brute",
                //EntryFlags = NPCEntryFlags.Tamable,
                Type = NPCType.Humanoid,
                DisplayIds = new[] { 21635u },
                Scale = 1,
                MinLevel = 80,
                MaxLevel = 80,
                //HordeFactionId = FactionTemplateId.Monster_2,
                DefaultTitle = guildname,
                MinHealth = 10000,
                MaxHealth = 10000,
                AttackPower = 314,
                AttackTime = 1500,
                MinDamage = 250,
                MaxDamage = 360,
                WalkSpeed = 2.5f,
                RunSpeed = 8f,
                FlySpeed = 14f,
                MinMana = 2000,
                NPCCreator = entry => new GuardBrute()
            };

            KingdomBrute.SetResistance(DamageSchool.Physical, 8000);

            //KingdomBrute.AddSpell(SpellId.ConeOfFire);
            NPCMgr.AddEntry(bruteID, KingdomBrute);
        }
    }
}
